package com.ruoyi.reportsnhnt.domain.bo;

import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.common.utils.BigDecimalUtil;
import com.ruoyi.report_tg.domain.bo.ExcelGeneralBo;
import com.ruoyi.reportsnhnt.domain.ReportSnhntCdbgmdtldBaDetail;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.*;

import java.util.Date;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 水泥混凝土稠度、观密度试验检测记录业务对象 report_snhnt_cdbgmd_bs_info
 *
 * @author zxs
 * @date 2024-06-21
 */

@Data
@EqualsAndHashCode(callSuper = true)
public class ReportSnhntCdbgmdBsInfoBo extends ExcelGeneralBo {

    /**
     * 主键
     */
    @NotNull(message = "主键不能为空", groups = { EditGroup.class })
    private Long excelId;

    /**
     * 第几页
     */
    @NotNull(message = "第几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long page;

    /**
     * 共几页
     */
    @NotNull(message = "共几页不能为空", groups = { AddGroup.class, EditGroup.class })
    private Long totalPage;

    /**
     * 检测单位名称
     */
    @NotBlank(message = "检测单位名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancdwmc;

    /**
     * 记录编号
     */
    @NotBlank(message = "记录编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jilbh;

    /**
     * 工程名称
     */
    @NotBlank(message = "工程名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gongcmc;

    /**
     * 工程部位/用途
     */
    @NotBlank(message = "工程部位/用途不能为空", groups = { AddGroup.class, EditGroup.class })
    private String gongcbwyt;

    /**
     * 样品信息
     */
    @NotBlank(message = "样品信息不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpxx;

    /**
     * 样品名称
     */
    @NotBlank(message = "样品名称不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpmc;

    /**
     * 样品编号
     */
    @NotBlank(message = "样品编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpbh;

    /**
     * 样品数量
     */
    @NotBlank(message = "样品数量不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpsl;

    /**
     * 样品状态
     */
    @NotBlank(message = "样品状态不能为空", groups = { AddGroup.class, EditGroup.class })
    private String yangpzt;

    /**
     * 来样时间
     */
    @NotNull(message = "来样时间不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date laiysj;

    /**
     * 试验检测日期
     */
    @NotNull(message = "试验检测日期不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiyjcrq;

    /**
     * 试验条件
     */
    @NotBlank(message = "试验条件不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shiytj;

    /**
     * 温度
     */
    @NotBlank(message = "温度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String wend;

    /**
     * 相对湿度
     */
    @NotBlank(message = "相对湿度不能为空", groups = { AddGroup.class, EditGroup.class })
    private String xiangdsd;

    /**
     * 检测依据
     */
    @NotBlank(message = "检测依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiancyj;

    /**
     * 判定依据
     */
    @NotBlank(message = "判定依据不能为空", groups = { AddGroup.class, EditGroup.class })
    private String pandyj;

    /**
     * 主要仪器设备名称及编号
     */
    @NotBlank(message = "主要仪器设备名称及编号不能为空", groups = { AddGroup.class, EditGroup.class })
    private String zhuyyqsbmcjbh;

    /**
     * 设备id(逗号隔开)
     */
    @NotBlank(message = "设备id(逗号隔开)不能为空", groups = { AddGroup.class, EditGroup.class })
    private String shebIds;

    /**
     * 混凝土种类
     */
    @NotBlank(message = "混凝土种类不能为空", groups = { AddGroup.class, EditGroup.class })
    private String hunntzl;

    /**
     * 搅拌方式
     */
    @NotBlank(message = "搅拌方式不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jiaobfs;

    /**
     * 稠度试件编号1
     */
    @NotBlank(message = "稠度试件编号1不能为空", groups = { AddGroup.class, EditGroup.class })
    private String choudsjbh1;

    /**
     * 稠度试件编号2
     */
    @NotBlank(message = "稠度试件编号2不能为空", groups = { AddGroup.class, EditGroup.class })
    private String choudsjbh2;

    /**
     * 维勃稠度测值（s）
     */
    @NotNull(message = "维勃稠度测值（s）不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal weibcdczbh11;

    /**
     * 维勃稠度测值（s）
     */
    @NotNull(message = "维勃稠度测值（s）不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal weibcdczbh12;

    /**
     * 维勃稠度测值（s）
     */
    @NotNull(message = "维勃稠度测值（s）不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal weibcdczbh21;

    /**
     * 维勃稠度测值（s）
     */
    @NotNull(message = "维勃稠度测值（s）不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal weibcdczbh22;

    /**
     * 维勃稠度平均值（s）
     */
    @NotNull(message = "维勃稠度平均值（s）不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal weibcdczbh1pjz;

    /**
     * 维勃稠度平均值（s）
     */
    @NotNull(message = "维勃稠度平均值（s）不能为空", groups = { AddGroup.class, EditGroup.class })
    private BigDecimal weibcdczbh2pjz;

    /**
     * 附加声明
     */
    @NotBlank(message = "附加声明不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fujsm;

    /**
     * 检测
     */
    @NotBlank(message = "检测不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jianc;

    /**
     * 记录
     */
    @NotBlank(message = "记录不能为空", groups = { AddGroup.class, EditGroup.class })
    private String jil;

    /**
     * 复核
     */
    @NotBlank(message = "复核不能为空", groups = { AddGroup.class, EditGroup.class })
    private String fuh;

    /**
     * 日期
     */
    @NotNull(message = "日期不能为空", groups = { AddGroup.class, EditGroup.class })
    private Date riq;


    private List<ReportSnhntCdbgmdtldBaDetail> detailList;


    private BigDecimal shiytzl1;
    public void setShiytzl1(BigDecimal shiytzl1){
        this.shiytzl1 = BigDecimalUtil.stpTrailZero(shiytzl1);
    }
    private BigDecimal shiytzl2;
    public void setShiytzl2(BigDecimal shiytzl2){
        this.shiytzl2 = BigDecimalUtil.stpTrailZero(shiytzl2);
    }
    private BigDecimal hunnthsytzzl1;
    public void setHunnthsytzzl1(BigDecimal hunnthsytzzl1){
        this.hunnthsytzzl1 = BigDecimalUtil.stpTrailZero(hunnthsytzzl1);
    }
    private BigDecimal hunnthsytzzl2;
    public void setHunnthsytzzl2(BigDecimal hunnthsytzzl2){
        this.hunnthsytzzl2 = BigDecimalUtil.stpTrailZero(hunnthsytzzl2);
    }
    //        `shiytzl1` decimal(10,5) DEFAULT NULL COMMENT '试样筒质量1(kg)',
//        `shiytzl2` decimal(10,5) DEFAULT NULL COMMENT '试样筒质量2(kg)',
//        `hunnthsytzzl1` decimal(10,5) DEFAULT NULL COMMENT '振实或捣实后混凝土和试样筒总质量(kg)',
//        `hunnthsytzzl2` decimal(10,5) DEFAULT NULL COMMENT '振实或捣实后混凝土和试样筒总质量(kg)',
//        `shiyzl1` decimal(10,5) DEFAULT NULL COMMENT '试样质量1(kg)',
//        `shiyzl2` decimal(10,5) DEFAULT NULL COMMENT '试样质量2(kg)',
//        `shiytrj1` decimal(10,5) DEFAULT NULL COMMENT '试样筒容积1(L)',
//        `shiytrj2` decimal(10,5) DEFAULT NULL COMMENT '试样筒容积2(L)',
//        `biaogmd1` decimal(10,5) DEFAULT NULL COMMENT '表观密度1(kg/m³)',
//        `biaogmd2` decimal(10,5) DEFAULT NULL COMMENT '表观密度1(kg/m³)',
//        `biaogmdpjz1` decimal(10,5) DEFAULT NULL COMMENT '表观密度平均值(kg/m³)',
    private BigDecimal shiyzl1;
    public void setShiyzl1(BigDecimal shiyzl1){
        this.shiyzl1 = BigDecimalUtil.stpTrailZero(shiyzl1);
    }
    private BigDecimal shiyzl2;
    public void setShiyzl2(BigDecimal shiyzl2){
        this.shiyzl2 = BigDecimalUtil.stpTrailZero(shiyzl2);
    }
    private BigDecimal shiytrj1;
    public void setShiytrj1(BigDecimal shiytrj1){
        this.shiytrj1 = BigDecimalUtil.stpTrailZero(shiytrj1);
    }
    private BigDecimal shiytrj2;
    public void setShiytrj2(BigDecimal shiytrj2){
        this.shiytrj2 = BigDecimalUtil.stpTrailZero(shiytrj2);
    }
    private BigDecimal biaogmd1;
    public void setBiaogmd1(BigDecimal biaogmd1){
        this.biaogmd1 = BigDecimalUtil.stpTrailZero(biaogmd1);
    }
    private BigDecimal biaogmd2;
    public void setBiaogmd2(BigDecimal biaogmd2){
        this.biaogmd2 = BigDecimalUtil.stpTrailZero(biaogmd2);
    }private BigDecimal biaogmdpjz1;
    public void setBiaogmdpjz1(BigDecimal biaogmdpjz1){
        this.biaogmdpjz1 = BigDecimalUtil.stpTrailZero(biaogmdpjz1);
    }


    private BigDecimal shiytzl3;
    public void setShiytzl3(BigDecimal shiytzl3){
        this.shiytzl3 = BigDecimalUtil.stpTrailZero(shiytzl3);
    }
    private BigDecimal shiytzl4;
    public void setShiytzl4(BigDecimal shiytzl4){
        this.shiytzl4 = BigDecimalUtil.stpTrailZero(shiytzl4);
    }
    private BigDecimal hunnthsytzzl3;
    public void setHunnthsytzzl3(BigDecimal hunnthsytzzl3){
        this.hunnthsytzzl3 = BigDecimalUtil.stpTrailZero(hunnthsytzzl3);
    }
    private BigDecimal hunnthsytzzl4;
    public void setHunnthsytzzl4(BigDecimal hunnthsytzzl4){
        this.hunnthsytzzl4 = BigDecimalUtil.stpTrailZero(hunnthsytzzl4);
    }
    //        `shiytzl3` decimal(10,5) DEFAULT NULL COMMENT '试样筒质量1(kg)',
//        `shiytzl4` decimal(10,5) DEFAULT NULL COMMENT '试样筒质量2(kg)',
//        `hunnthsytzzl3` decimal(10,5) DEFAULT NULL COMMENT '振实或捣实后混凝土和试样筒总质量(kg)',
//        `hunnthsytzzl4` decimal(10,5) DEFAULT NULL COMMENT '振实或捣实后混凝土和试样筒总质量(kg)',
//        `shiyzl3` decimal(10,5) DEFAULT NULL COMMENT '试样质量1(kg)',
//        `shiyzl4` decimal(10,5) DEFAULT NULL COMMENT '试样质量2(kg)',
//        `shiytrj3` decimal(10,5) DEFAULT NULL COMMENT '试样筒容积1(L)',
//        `shiytrj4` decimal(10,5) DEFAULT NULL COMMENT '试样筒容积2(L)',
//        `biaogmd3` decimal(10,5) DEFAULT NULL COMMENT '表观密度1(kg/m³)',
//        `biaogmd4` decimal(10,5) DEFAULT NULL COMMENT '表观密度1(kg/m³)',
//        `biaogmdpjz2` decimal(10,5) DEFAULT NULL COMMENT '表观密度平均值(kg/m³)',
    private BigDecimal shiyzl3;
    public void setShiyzl3(BigDecimal shiyzl3){
        this.shiyzl3 = BigDecimalUtil.stpTrailZero(shiyzl3);
    }
    private BigDecimal shiyzl4;
    public void setShiyzl4(BigDecimal shiyzl4){
        this.shiyzl4 = BigDecimalUtil.stpTrailZero(shiyzl4);
    }
    private BigDecimal shiytrj3;
    public void setShiytrj3(BigDecimal shiytrj3){
        this.shiytrj3 = BigDecimalUtil.stpTrailZero(shiytrj3);
    }
    private BigDecimal shiytrj4;
    public void setShiytrj4(BigDecimal shiytrj4){
        this.shiytrj4 = BigDecimalUtil.stpTrailZero(shiytrj4);
    }
    private BigDecimal biaogmd3;
    public void setBiaogmd3(BigDecimal biaogmd3){
        this.biaogmd3 = BigDecimalUtil.stpTrailZero(biaogmd3);
    }
    private BigDecimal biaogmd4;
    public void setBiaogmd4(BigDecimal biaogmd4){
        this.biaogmd4 = BigDecimalUtil.stpTrailZero(biaogmd4);
    }
    private BigDecimal biaogmdpjz2;
    public void setBiaogmdpjz2(BigDecimal biaogmdpjz2){
        this.biaogmdpjz2 = BigDecimalUtil.stpTrailZero(biaogmdpjz2);
    }


    private BigDecimal shiytzl5;
    public void setShiytzl5(BigDecimal shiytzl5){
        this.shiytzl5 = BigDecimalUtil.stpTrailZero(shiytzl5);
    }
    private BigDecimal shiytzl6;
    public void setShiytzl6(BigDecimal shiytzl6){
        this.shiytzl6 = BigDecimalUtil.stpTrailZero(shiytzl6);
    }
    private BigDecimal hunnthsytzzl5;
    public void setHunnthsytzzl5(BigDecimal hunnthsytzzl5){
        this.hunnthsytzzl5 = BigDecimalUtil.stpTrailZero(hunnthsytzzl5);
    }
    private BigDecimal hunnthsytzzl6;
    public void setHunnthsytzzl6(BigDecimal hunnthsytzzl6){
        this.hunnthsytzzl6 = BigDecimalUtil.stpTrailZero(hunnthsytzzl6);
    }
    //        `shiytzl5` decimal(10,5) DEFAULT NULL COMMENT '试样筒质量1(kg)',
//        `shiytzl6` decimal(10,5) DEFAULT NULL COMMENT '试样筒质量2(kg)',
//        `hunnthsytzzl5` decimal(10,5) DEFAULT NULL COMMENT '振实或捣实后混凝土和试样筒总质量(kg)',
//        `hunnthsytzzl6` decimal(10,5) DEFAULT NULL COMMENT '振实或捣实后混凝土和试样筒总质量(kg)',
//        `shiyzl5` decimal(10,5) DEFAULT NULL COMMENT '试样质量1(kg)',
//        `shiyzl6` decimal(10,5) DEFAULT NULL COMMENT '试样质量2(kg)',
//        `shiytrj5` decimal(10,5) DEFAULT NULL COMMENT '试样筒容积1(L)',
//        `shiytrj6` decimal(10,5) DEFAULT NULL COMMENT '试样筒容积2(L)',
//        `biaogmd5` decimal(10,5) DEFAULT NULL COMMENT '表观密度1(kg/m³)',
//        `biaogmd6` decimal(10,5) DEFAULT NULL COMMENT '表观密度1(kg/m³)',
//        `biaogmdpjz3` decimal(10,5) DEFAULT NULL COMMENT '表观密度平均值(kg/m³)',
    private BigDecimal shiyzl5;
    public void setShiyzl5(BigDecimal shiyzl5){
        this.shiyzl5 = BigDecimalUtil.stpTrailZero(shiyzl5);
    }
    private BigDecimal shiyzl6;
    public void setShiyzl6(BigDecimal shiyzl6){
        this.shiyzl6 = BigDecimalUtil.stpTrailZero(shiyzl6);
    }
    private BigDecimal shiytrj5;
    public void setShiytrj5(BigDecimal shiytrj5){
        this.shiytrj5 = BigDecimalUtil.stpTrailZero(shiytrj5);
    }
    private BigDecimal shiytrj6;
    public void setShiytrj6(BigDecimal shiytrj6){
        this.shiytrj6 = BigDecimalUtil.stpTrailZero(shiytrj6);
    }
    private BigDecimal biaogmd5;
    public void setBiaogmd5(BigDecimal biaogmd5){
        this.biaogmd5 = BigDecimalUtil.stpTrailZero(biaogmd5);
    }
    private BigDecimal biaogmd6;
    public void setBiaogmd6(BigDecimal biaogmd6){
        this.biaogmd6 = BigDecimalUtil.stpTrailZero(biaogmd6);
    }
    private BigDecimal biaogmdpjz3;
    public void setBiaogmdpjz3(BigDecimal biaogmdpjz3){
        this.biaogmdpjz3 = BigDecimalUtil.stpTrailZero(biaogmdpjz3);
    }


}
